//
//  TestSwift.swift
//  TestSwift
//
//  Created by Juvid on 2016/10/24.
//  Copyright © 2016年 Juvid. All rights reserved.
//

//open > public > interal > fileprivate > private
import UIKit

 class TestSwift: NSObject {
    func testLogs(){
        
        NSLog("swift log");
    }

}
public func testLog(){
    NSLog("hahhhh");
}



public final class FinalClass { }

// 这个类在ModuleA的范围外是不能被继承的，只能被访问
public class PublicClass {

    public func testPublic() {}

    // 这是错误的写法，因为class已经不能被继承，
    // 所以他的方法的访问权限不能大于类的访问权限
    open func testOpen() {}

    // final的含义保持不变
    public final func testPublicFinal() {}
}
// 在ModuleA的范围外可以被继承
open class OpenClass {
    // 这个属性在ModuleA的范围外不能被override
    public var size : Int = 0

    // 这个方法在ModuleA的范围外不能被override
    public func testPublic() {}

    // 这个方法在任何地方都可以被override
    open func testOpen() {}

    ///final的含义保持不变
    public final func testPublicFinal() {}
}
